package com.example.lotterysystem.common.exception;

import com.example.lotterysystem.common.errorcode.ErrorCode;
import lombok.Data;
import lombok.EqualsAndHashCode;
//Data会自动创建equals 和 hashCode
//callSuper = true 表示不调用父类的 equals() 和 hashCode() 方法。
@Data
@EqualsAndHashCode(callSuper = true)
public class ServiceException extends  RuntimeException{
    //异常码
    private  Integer code;
    //异常信息
    private  String message;

    /**
     * 空构造⽅法，避免反序列化问题
     */
    public ServiceException() {
    }
    public ServiceException(Integer code, String message) {
        this.code = code;
        this.message = message;
    }
    public ServiceException(ErrorCode errorCode) {
        this.code = errorCode.getCode();
        this.message = errorCode.getMsg();
    }


}
